nom-tracable 0.4.1

Extension of nom to trace parser
Documentation
`nom-tracable` is an extension of [nom](https://docs.rs/nom) to trace parser. ## Examples The following example show a quick example. ``` use nom::branch::*; use nom::character::complete::*; use nom::IResult; use nom_locate::LocatedSpanEx; use nom_tracable::{tracable_parser, TracableInfo}; // Input type must implement trait Tracable // nom_locate::LocatedSpanEx implements it. type Span<'a> = LocatedSpanEx<&'a str, TracableInfo>; // Apply tracable_parser by custom attribute #[tracable_parser] pub fn term(s: Span) -> IResult { let (s, x) = char('1')(s)?; Ok((s, x.to_string())) } #[test] fn test() { // Configure trace setting let info = TracableInfo::new().forward(true).backward(true); let ret = term(LocatedSpanEx::new_extra("1", info)); assert_eq!("\"1\"", format!("{:?}", ret.unwrap().1)); } ```